This repository has been archived by the owner on Nov 1, 2023. It is now read-only.
Remove client_secret
from config, add env var
#1918
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The client secret is only intended for confidential client use (e.g. ephemerally, in CI). If set via
onefuzz config
, it will be serialized as part of the config, for convenient reuse in that setting. When serialized, default filesystem permissions secure it against other local users, but this lacks defense in depth. On a long-lived host, this is brittle.Make misuse impossible: remove the
client_secret
field from the config altogether. When initializing aOnefuzz
API instance, check an env var for a client secret (to allow "setting" the client secret once across multiple commands in CI). This means every CLI invocation will also perform this env lookup. Continue to allow passing / overriding the secret as a CLI argument, too.Tested with a dev service principal and client secret: